package unq.uis.robots.applicationsModels;

import java.io.Serializable;

import org.uqbar.commons.utils.Observable;

import unq.uis.robots.model.Jugador;
import unq.uis.robots.model.Pelea;
import unq.uis.robots.model.Robot;

@Observable
public class PelearApplicationModel implements Serializable{
	
	private static final long serialVersionUID = 1L;
	private JugadorVista vistaPrincipal;
	private Robot robotPropio;
	private Robot robotContrincante;
	private Pelea pelea;
	private int apuesta;
	private Jugador jugador;
	
	
	public PelearApplicationModel(JugadorVista vistaPrincipal){
		this.vistaPrincipal = vistaPrincipal;
		this.robotPropio = vistaPrincipal.getRobotSeleccionado();
		this.robotContrincante = vistaPrincipal.getRobotContrincanteSeleccionado();
		this.jugador = vistaPrincipal.getJugador();
		this.pelea = new Pelea(robotPropio, robotContrincante, jugador);
	}

	public void pelear(){
		this.pelea.pelear(this.getApuesta());
		//this.vistaPrincipal.actualizarDatos();
	}

	public JugadorVista getVistaPrincipal() {
		return vistaPrincipal;
	}

	public void setVistaPrincipal(JugadorVista vistaAnterior) {
		this.vistaPrincipal = vistaAnterior;
	}

	public Robot getRobotPropio() {
		return robotPropio;
	}

	public void setRobotPropio(Robot robotPropio) {
		this.robotPropio = robotPropio;
	}

	public Robot getRobotContrincante() {
		return robotContrincante;
	}

	public void setRobotContrincante(Robot robotContrincante) {
		this.robotContrincante = robotContrincante;
	}

	public Pelea getPelea() {
		return pelea;
	}

	public void setPelea(Pelea pelea) {
		this.pelea = pelea;
	}

	public int getApuesta() {
		return apuesta;
	}

	public void setApuesta(int apuesta) {
		this.apuesta = apuesta;
	}

	public Jugador getJugador() {
		return jugador;
	}

	public void setJugador(Jugador jugador) {
		this.jugador = jugador;
	}
	
}
